/**
 * 
 */
package com.dalonedrow.module.dragonquest.rpg;

import com.dalonedrow.rpg.base.flyweights.IOPCData;

/**
 * @author Donald
 */
public final class DragonQuestCharacter extends IOPCData {
	/** the character's birth aspect. */
	private int		aspect;
	/** the character's base Agility score. */
	private float	baseAgility;
	/** the character's base Endurance score. */
	private float	baseEndurance;
	/** the character's base Fatigue score. */
	private float	baseFatigue;
	/** the character's base MagicAptitude score. */
	private float	baseMagicAptitude;
	/** the character's base ManualDexterity score. */
	private float	baseManualDexterity;
	/** the character's base Perception score. */
	private float	basePerception;
	/** the character's base PhysicalBeauty score. */
	private float	basePhysicalBeauty;
	/** the character's base PhysicalStrength score. */
	private float	basePhysicalStrength;
	/** the character's base TacticalMovementRate score. */
	private float	baseTacticalMovementRate;
	/** the character's base Willpower score. */
	private float	baseWillpower;
	/** the full value of the character's Agility score. */
	private float	fullAgility;
	/** the full value of the character's Endurance score. */
	private float	fullEndurance;
	/** the full value of the character's Fatigue score. */
	private float	fullFatigue;
	/** the full value of the character's MagicAptitude score. */
	private float	fullMagicAptitude;
	/** the full value of the character's ManualDexterity score. */
	private float	fullManualDexterity;
	/** the full value of the character's Perception score. */
	private float	fullPerception;
	/** the full value of the character's PhysicalBeauty score. */
	private float	fullPhysicalBeauty;
	/** the full value of the character's PhysicalStrength score. */
	private float	fullPhysicalStrength;
	/** the full value of the character's TacticalMovementRate score. */
	private float	fullTacticalMovementRate;
	/** the full value of the character's Willpower score. */
	private float	fullWillpower;
	/** 
	 * the value of the modifier applied to the character's base Agility score. 
	 */
	private float	modAgility;
	/**
	 * the value of the modifier applied to the character's base Endurance
	 * score.
	 */
	private float	modEndurance;
	/** 
	 * the value of the modifier applied to the character's base Fatigue score. 
	 */
	private float	modFatigue;
	/**
	 * the value of the modifier applied to the character's base MagicAptitude
	 * score.
	 */
	private float	modMagicAptitude;
	/**
	 * the value of the modifier applied to the character's base ManualDexterity
	 * score.
	 */
	private float	modManualDexterity;
	/**
	 * the value of the modifier applied to the character's base Perception
	 * score.
	 */
	private float	modPerception;
	/**
	 * the value of the modifier applied to the character's base PhysicalBeauty
	 * score.
	 */
	private float	modPhysicalBeauty;
	/**
	 * the value of the modifier applied to the character's base
	 * PhysicalStrength score.
	 */
	private float	modPhysicalStrength;
	/**
	 * the value of the modifier applied to the character's base
	 * TacticalMovementRate score.
	 */
	private float	modTacticalMovementRate;
	/**
	 * the value of the modifier applied to the character's base Willpower
	 * score.
	 */
	private float	modWillpower;
	/** the character's primary hand. */
	private int		primaryHand;
	/**
	 * Adjusts the score modifier for the Agility ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModAgility(final float val) {
		modAgility += val;
	}
	/**
	 * Adjusts the score modifier for the Endurance ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModEndurance(final float val) {
		modEndurance += val;
	}
	/**
	 * Adjusts the score modifier for the Fatigue ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModFatigue(final float val) {
		modFatigue += val;
	}
	/**
	 * Adjusts the score modifier for the MagicAptitude ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModMagicAptitude(final float val) {
		modMagicAptitude += val;
	}
	/**
	 * Adjusts the score modifier for the ManualDexterity ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModManualDexterity(final float val) {
		modManualDexterity += val;
	}
	/**
	 * Adjusts the score modifier for the Perception ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModPerception(final float val) {
		modPerception += val;
	}
	/**
	 * Adjusts the score modifier for the PhysicalBeauty ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModPhysicalBeauty(final float val) {
		modPhysicalBeauty += val;
	}
	/**
	 * Adjusts the score modifier for the PhysicalStrength ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModPhysicalStrength(final float val) {
		modPhysicalStrength += val;
	}
	/**
	 * Adjusts the score modifier for the TacticalMovementRate ability by a
	 * certain amount.
	 * @param val the modifier applied
	 */
	public void adjModTacticalMovementRate(final float val) {
		modTacticalMovementRate += val;
	}
	/**
	 * Adjusts the score modifier for the Willpower ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModWillpower(final float val) {
		modWillpower += val;
	}
	/**
	 * Gets the character's base Agility score.
	 * @return <code>float</code>
	 */
	public float getBaseAgility() {
		return baseAgility;
	}
	/**
	 * Gets the character's base Endurance score.
	 * @return <code>float</code>
	 */
	public float getBaseEndurance() {
		return baseEndurance;
	}
	/**
	 * Gets the character's base Fatigue score.
	 * @return <code>float</code>
	 */
	public float getBaseFatigue() {
		return baseFatigue;
	}
	/**
	 * Gets the character's base MagicAptitude score.
	 * @return <code>float</code>
	 */
	public float getBaseMagicAptitude() {
		return baseMagicAptitude;
	}
	/**
	 * Gets the character's base ManualDexterity score.
	 * @return <code>float</code>
	 */
	public float getBaseManualDexterity() {
		return baseManualDexterity;
	}
	/**
	 * Gets the character's base Perception score.
	 * @return <code>float</code>
	 */
	public float getBasePerception() {
		return basePerception;
	}
	/**
	 * Gets the character's base PhysicalBeauty score.
	 * @return <code>float</code>
	 */
	public float getBasePhysicalBeauty() {
		return basePhysicalBeauty;
	}
	/**
	 * Gets the character's base PhysicalStrength score.
	 * @return <code>float</code>
	 */
	public float getBasePhysicalStrength() {
		return basePhysicalStrength;
	}
	/**
	 * Gets the character's base TacticalMovementRate score.
	 * @return <code>float</code>
	 */
	public float getBaseTacticalMovementRate() {
		return baseTacticalMovementRate;
	}
	/**
	 * Gets the character's base Willpower score.
	 * @return <code>float</code>
	 */
	public float getBaseWillpower() {
		return baseWillpower;
	}
	/**
	 * Gets the full value of the character's Agility score.
	 * @return <code>float</code>
	 */
	public float getFullAgility() {
		return fullAgility;
	}
	/**
	 * Gets the full value of the character's Endurance score.
	 * @return <code>float</code>
	 */
	public float getFullEndurance() {
		return fullEndurance;
	}
	/**
	 * Gets the full value of the character's Fatigue score.
	 * @return <code>float</code>
	 */
	public float getFullFatigue() {
		return fullFatigue;
	}
	/**
	 * Gets the full value of the character's MagicAptitude score.
	 * @return <code>float</code>
	 */
	public float getFullMagicAptitude() {
		return fullMagicAptitude;
	}
	/**
	 * Gets the full value of the character's ManualDexterity score.
	 * @return <code>float</code>
	 */
	public float getFullManualDexterity() {
		return fullManualDexterity;
	}
	/**
	 * Gets the full value of the character's Perception score.
	 * @return <code>float</code>
	 */
	public float getFullPerception() {
		return fullPerception;
	}
	/**
	 * Gets the full value of the character's PhysicalBeauty score.
	 * @return <code>float</code>
	 */
	public float getFullPhysicalBeauty() {
		return fullPhysicalBeauty;
	}
	/**
	 * Gets the full value of the character's PhysicalStrength score.
	 * @return <code>float</code>
	 */
	public float getFullPhysicalStrength() {
		return fullPhysicalStrength;
	}
	/**
	 * Gets the full value of the character's TacticalMovementRate score.
	 * @return <code>float</code>
	 */
	public float getFullTacticalMovementRate() {
		return fullTacticalMovementRate;
	}
	/**
	 * Gets the full value of the character's Willpower score.
	 * @return <code>float</code>
	 */
	public float getFullWillpower() {
		return fullWillpower;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Agility
	 * score.
	 * @return <code>float</code>
	 */
	public float getModAgility() {
		return modAgility;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Endurance
	 * score.
	 * @return <code>float</code>
	 */
	public float getModEndurance() {
		return modEndurance;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Fatigue
	 * score.
	 * @return <code>float</code>
	 */
	public float getModFatigue() {
		return modFatigue;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * MagicAptitude score.
	 * @return <code>float</code>
	 */
	public float getModMagicAptitude() {
		return modMagicAptitude;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * ManualDexterity score.
	 * @return <code>float</code>
	 */
	public float getModManualDexterity() {
		return modManualDexterity;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Perception
	 * score.
	 * @return <code>float</code>
	 */
	public float getModPerception() {
		return modPerception;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * PhysicalBeauty score.
	 * @return <code>float</code>
	 */
	public float getModPhysicalBeauty() {
		return modPhysicalBeauty;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * PhysicalStrength score.
	 * @return <code>float</code>
	 */
	public float getModPhysicalStrength() {
		return modPhysicalStrength;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * TacticalMovementRate score.
	 * @return <code>float</code>
	 */
	public float getModTacticalMovementRate() {
		return modTacticalMovementRate;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Willpower
	 * score.
	 * @return <code>float</code>
	 */
	public float getModWillpower() {
		return modWillpower;
	}
	/**
	 * Sets the character's base Agility score.
	 * @param val the new value
	 */
	public void setBaseAgility(final float val) {
		baseAgility = val;
	}
	/**
	 * Sets the character's base Endurance score.
	 * @param val the new value
	 */
	public void setBaseEndurance(final float val) {
		baseEndurance = val;
	}
	/**
	 * Sets the character's base Fatigue score.
	 * @param val the new value
	 */
	public void setBaseFatigue(final float val) {
		baseFatigue = val;
	}
	/**
	 * Sets the character's base MagicAptitude score.
	 * @param val the new value
	 */
	public void setBaseMagicAptitude(final float val) {
		baseMagicAptitude = val;
	}
	/**
	 * Sets the character's base ManualDexterity score.
	 * @param val the new value
	 */
	public void setBaseManualDexterity(final float val) {
		baseManualDexterity = val;
	}
	/**
	 * Sets the character's base Perception score.
	 * @param val the new value
	 */
	public void setBasePerception(final float val) {
		basePerception = val;
	}
	/**
	 * Sets the character's base PhysicalBeauty score.
	 * @param val the new value
	 */
	public void setBasePhysicalBeauty(final float val) {
		basePhysicalBeauty = val;
	}
	/**
	 * Sets the character's base PhysicalStrength score.
	 * @param val the new value
	 */
	public void setBasePhysicalStrength(final float val) {
		basePhysicalStrength = val;
	}
	/**
	 * Sets the character's base TacticalMovementRate score.
	 * @param val the new value
	 */
	public void setBaseTacticalMovementRate(final float val) {
		baseTacticalMovementRate = val;
	}
	/**
	 * Sets the character's base Willpower score.
	 * @param val the new value
	 */
	public void setBaseWillpower(final float val) {
		baseWillpower = val;
	}
	/**
	 * Sets the full value of the character's Agility score.
	 * @param val the new value
	 */
	public void setFullAgility(final float val) {
		fullAgility = val;
	}
	/**
	 * Sets the full value of the character's Endurance score.
	 * @param val the new value
	 */
	public void setFullEndurance(final float val) {
		fullEndurance = val;
	}
	/**
	 * Sets the full value of the character's Fatigue score.
	 * @param val the new value
	 */
	public void setFullFatigue(final float val) {
		fullFatigue = val;
	}
	/**
	 * Sets the full value of the character's MagicAptitude score.
	 * @param val the new value
	 */
	public void setFullMagicAptitude(final float val) {
		fullMagicAptitude = val;
	}
	/**
	 * Sets the full value of the character's ManualDexterity score.
	 * @param val the new value
	 */
	public void setFullManualDexterity(final float val) {
		fullManualDexterity = val;
	}
	/**
	 * Sets the full value of the character's Perception score.
	 * @param val the new value
	 */
	public void setFullPerception(final float val) {
		fullPerception = val;
	}
	/**
	 * Sets the full value of the character's PhysicalBeauty score.
	 * @param val the new value
	 */
	public void setFullPhysicalBeauty(final float val) {
		fullPhysicalBeauty = val;
	}
	/**
	 * Sets the full value of the character's PhysicalStrength score.
	 * @param val the new value
	 */
	public void setFullPhysicalStrength(final float val) {
		fullPhysicalStrength = val;
	}
	/**
	 * Sets the full value of the character's TacticalMovementRate score.
	 * @param val the new value
	 */
	public void setFullTacticalMovementRate(final float val) {
		fullTacticalMovementRate = val;
	}
	/**
	 * Sets the full value of the character's Willpower score.
	 * @param val the new value
	 */
	public void setFullWillpower(final float val) {
		fullWillpower = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Agility score.
	 * @param val the new value
	 */
	public void setModAgility(final float val) {
		modAgility = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Endurance
	 * score.
	 * @param val the new value
	 */
	public void setModEndurance(final float val) {
		modEndurance = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Fatigue score.
	 * @param val the new value
	 */
	public void setModFatigue(final float val) {
		modFatigue = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base MagicAptitude
	 * score.
	 * @param val the new value
	 */
	public void setModMagicAptitude(final float val) {
		modMagicAptitude = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base
	 * ManualDexterity score.
	 * @param val the new value
	 */
	public void setModManualDexterity(final float val) {
		modManualDexterity = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Perception
	 * score.
	 * @param val the new value
	 */
	public void setModPerception(final float val) {
		modPerception = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base PhysicalBeauty
	 * score.
	 * @param val the new value
	 */
	public void setModPhysicalBeauty(final float val) {
		modPhysicalBeauty = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base
	 * PhysicalStrength score.
	 * @param val the new value
	 */
	public void setModPhysicalStrength(final float val) {
		modPhysicalStrength = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base
	 * TacticalMovementRate score.
	 * @param val the new value
	 */
	public void setModTacticalMovementRate(final float val) {
		modTacticalMovementRate = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Willpower
	 * score.
	 * @param val the new value
	 */
	public void setModWillpower(final float val) {
		modWillpower = val;
	}

}
